package com.sinosoft.sm.system.common.utils;

import java.util.List;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.sinosoft.sm.system.common.entity.PaginationEntity;


/**
 * 分页插件工具类：基于mybatis分页组件pagination
 * @author xiaoxiong
 *
 */
public class PaginationUtil {

	/**
	 * 开启分页功能
	 * @param page	当前页
	 * @param rows	一页显示的数据条数
	 * @param data	业务数据集合
	 * @return	分页实体类
	 */
	@SuppressWarnings({ "rawtypes", "unchecked" })
	public static PaginationEntity startPaginationPlugin(int page, int rows, List<?> data) {
		PaginationEntity paginationEntity = new PaginationEntity();
		PageHelper.startPage(page, rows);
		PageInfo pageInfo = new PageInfo(data);
		paginationEntity.setData(data);
		paginationEntity.setTotal((int)pageInfo.getTotal());
		paginationEntity.setPage(pageInfo.getPageNum());
		return paginationEntity;
	}
}
